package cn.kgc.service;

import cn.kgc.pojo.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * Created by Administrator on 2018/9/13.
 */
public interface BackUserService {
    /**
     *  登录功能
     * @param devcode  开发者用户名
     * @param password 开发者密码
     * @return  符合条件的开发者信息 可能为 空
     * @throws Exception 可能会出现的异常
     */
    String login(String devcode, String password);

    /**
     * 查询所有的方法接口
     * @param querySoftwareName 模糊查询需要的参数
     * @param checkFlat 模糊查询需要的参数
     * @param queryLevel1 模糊查询需要的参数
     * @param queryCategoryLevel2 模糊查询需要的参数
     * @param queryCategoryLevel3 模糊查询需要的参数
     * @return
     */
    List<AppInfo> queryALLApp(int indexNum, int pageSize,String querySoftwareName,String checkFlat,String queryLevel1,String queryCategoryLevel2,String queryCategoryLevel3);

    /**
     *通过版本id去查询需要审核的app的基础信息
     * @param versionId  app的版本id
     * @return
     */
    List<AppInfo> checkApp( String versionId);

    /**
     * 通过app 的id去查询需要审核的app的最新版本信息
     * @param id app的id
     * @return
     */
    List<AppVersion> checkVersion(String id);

    /**
     * 计算一共有多少数据
     * @param querySoftwareName 模糊查询的条件
     * @param checkFlat 模糊查询的条件
     * @param queryLevel1 模糊查询的条件
     * @param queryCategoryLevel2 模糊查询的条件
     * @param queryCategoryLevel3 模糊查询的条件
     * @return
     */
    int totalCount (String querySoftwareName,String checkFlat,String queryLevel1,String queryCategoryLevel2,String queryCategoryLevel3);

    //ajax请求
    List<DataDictionary> checkFloat();

    List<AppCategory> checkLevel1();

    List<AppCategory> checkLevel2(String level1);

    List<AppCategory> checkLevel3(String level2);


//审核通过修改数据库状体的方法
    int checkSave(String id);
    //审核不通过修改数据库状态的方法。

    int checkSaves(String id);


}
